package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目招标对象 sys_invite_bids
 * 
 * @author zhaonz
 * @date 2023-06-02
 */
@TableName("sys_invite_bids")
public class InviteBids extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 招标ID */
    @TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long inviteBidsId;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 采购方式 */
    @Excel(name = "采购方式")
    private String procurementMethod;

    /** 评标原则 */
    @Excel(name = "评标原则")
    private String evaluationPrinciples;

    /** 开标时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开标时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date bidOpeningTime;

    /** 开标方式 */
    @Excel(name = "开标方式")
    private String bidOpeningMethod;

    /** 开标地点 */
    @Excel(name = "开标地点")
    private String placeOfBidOpening;

    /** 开标评委 */
    @Excel(name = "开标评委")
    private String bidOpeningJudges;

    /** 合规员 */
    @Excel(name = "合规员")
    private String complianceOfficer;

    /** 投标公司1名称 */
    @Excel(name = "投标公司1名称")
    private String nameOfBiddingCompany1;

    /** 投标公司1投标人 */
    @Excel(name = "投标公司1投标人")
    private String biddingCompanyBidder1;

    /** 投标公司1报价 */
    @Excel(name = "投标公司1报价")
    private BigDecimal biddingCompanyQuotation1;

    /** 投标公司2名称 */
    @Excel(name = "投标公司2名称")
    private String nameOfBiddingCompany2;

    /** 投标公司2投标人 */
    @Excel(name = "投标公司2投标人")
    private String biddingCompanyBidder2;

    /** 投标公司2报价 */
    @Excel(name = "投标公司2报价")
    private BigDecimal biddingCompanyQuotation2;

    /** 投标公司3名称 */
    @Excel(name = "投标公司3名称")
    private String nameOfBiddingCompany3;

    /** 投标公司3投标人 */
    @Excel(name = "投标公司3投标人")
    private String biddingCompanyBidder3;

    /** 投标公司3报价 */
    @Excel(name = "投标公司3报价")
    private BigDecimal biddingCompanyQuotation3;

    public Long getInviteBidsId() {
        return inviteBidsId;
    }

    public InviteBids setInviteBidsId(Long inviteBidsId) {
        this.inviteBidsId = inviteBidsId;
        return this;
    }

    public Long getProjectId() {
        return projectId;
    }

    public InviteBids setProjectId(Long projectId) {
        this.projectId = projectId;
        return this;
    }

    public String getProcurementMethod() {
        return procurementMethod;
    }

    public InviteBids setProcurementMethod(String procurementMethod) {
        this.procurementMethod = procurementMethod;
        return this;
    }

    public String getEvaluationPrinciples() {
        return evaluationPrinciples;
    }

    public InviteBids setEvaluationPrinciples(String evaluationPrinciples) {
        this.evaluationPrinciples = evaluationPrinciples;
        return this;
    }

    public Date getBidOpeningTime() {
        return bidOpeningTime;
    }

    public InviteBids setBidOpeningTime(Date bidOpeningTime) {
        this.bidOpeningTime = bidOpeningTime;
        return this;
    }

    public String getBidOpeningMethod() {
        return bidOpeningMethod;
    }

    public InviteBids setBidOpeningMethod(String bidOpeningMethod) {
        this.bidOpeningMethod = bidOpeningMethod;
        return this;
    }

    public String getPlaceOfBidOpening() {
        return placeOfBidOpening;
    }

    public InviteBids setPlaceOfBidOpening(String placeOfBidOpening) {
        this.placeOfBidOpening = placeOfBidOpening;
        return this;
    }

    public String getBidOpeningJudges() {
        return bidOpeningJudges;
    }

    public InviteBids setBidOpeningJudges(String bidOpeningJudges) {
        this.bidOpeningJudges = bidOpeningJudges;
        return this;
    }

    public String getComplianceOfficer() {
        return complianceOfficer;
    }

    public InviteBids setComplianceOfficer(String complianceOfficer) {
        this.complianceOfficer = complianceOfficer;
        return this;
    }

    public String getNameOfBiddingCompany1() {
        return nameOfBiddingCompany1;
    }

    public InviteBids setNameOfBiddingCompany1(String nameOfBiddingCompany1) {
        this.nameOfBiddingCompany1 = nameOfBiddingCompany1;
        return this;
    }

    public String getBiddingCompanyBidder1() {
        return biddingCompanyBidder1;
    }

    public InviteBids setBiddingCompanyBidder1(String biddingCompanyBidder1) {
        this.biddingCompanyBidder1 = biddingCompanyBidder1;
        return this;
    }

    public BigDecimal getBiddingCompanyQuotation1() {
        return biddingCompanyQuotation1;
    }

    public InviteBids setBiddingCompanyQuotation1(BigDecimal biddingCompanyQuotation1) {
        this.biddingCompanyQuotation1 = biddingCompanyQuotation1;
        return this;
    }

    public String getNameOfBiddingCompany2() {
        return nameOfBiddingCompany2;
    }

    public InviteBids setNameOfBiddingCompany2(String nameOfBiddingCompany2) {
        this.nameOfBiddingCompany2 = nameOfBiddingCompany2;
        return this;
    }

    public String getBiddingCompanyBidder2() {
        return biddingCompanyBidder2;
    }

    public InviteBids setBiddingCompanyBidder2(String biddingCompanyBidder2) {
        this.biddingCompanyBidder2 = biddingCompanyBidder2;
        return this;
    }

    public BigDecimal getBiddingCompanyQuotation2() {
        return biddingCompanyQuotation2;
    }

    public InviteBids setBiddingCompanyQuotation2(BigDecimal biddingCompanyQuotation2) {
        this.biddingCompanyQuotation2 = biddingCompanyQuotation2;
        return this;
    }

    public String getNameOfBiddingCompany3() {
        return nameOfBiddingCompany3;
    }

    public InviteBids setNameOfBiddingCompany3(String nameOfBiddingCompany3) {
        this.nameOfBiddingCompany3 = nameOfBiddingCompany3;
        return this;
    }

    public String getBiddingCompanyBidder3() {
        return biddingCompanyBidder3;
    }

    public InviteBids setBiddingCompanyBidder3(String biddingCompanyBidder3) {
        this.biddingCompanyBidder3 = biddingCompanyBidder3;
        return this;
    }

    public BigDecimal getBiddingCompanyQuotation3() {
        return biddingCompanyQuotation3;
    }

    public InviteBids setBiddingCompanyQuotation3(BigDecimal biddingCompanyQuotation3) {
        this.biddingCompanyQuotation3 = biddingCompanyQuotation3;
        return this;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("inviteBidsId", getInviteBidsId())
            .append("projectId", getProjectId())
            .append("procurementMethod", getProcurementMethod())
            .append("evaluationPrinciples", getEvaluationPrinciples())
            .append("bidOpeningTime", getBidOpeningTime())
            .append("bidOpeningMethod", getBidOpeningMethod())
            .append("placeOfBidOpening", getPlaceOfBidOpening())
            .append("bidOpeningJudges", getBidOpeningJudges())
            .append("complianceOfficer", getComplianceOfficer())
            .append("nameOfBiddingCompany1", getNameOfBiddingCompany1())
            .append("biddingCompanyBidder1", getBiddingCompanyBidder1())
            .append("biddingCompanyQuotation1", getBiddingCompanyQuotation1())
            .append("nameOfBiddingCompany2", getNameOfBiddingCompany2())
            .append("biddingCompanyBidder2", getBiddingCompanyBidder2())
            .append("biddingCompanyQuotation2", getBiddingCompanyQuotation2())
            .append("nameOfBiddingCompany3", getNameOfBiddingCompany3())
            .append("biddingCompanyBidder3", getBiddingCompanyBidder3())
            .append("biddingCompanyQuotation3", getBiddingCompanyQuotation3())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
